var limsDbconn = Gikam.getPageObject({

    getEditListColumns : function() {
        return [ {
            checkbox : true
        }, {
            field : 'sourceName',
            title : 'T_LIMS_DBCONN.SOURCENAME',
            validators : [ 'notEmpty' ],
        },{
            field : 'url',
            title : 'T_LIMS_DBCONN.URL',
            width : 630,
        }, {
            field : 'username',
            title : 'T_LIMS_DBCONN.USERNAME'
        }, {
            field : 'remark',
            title : 'T_LIMS_DBCONN.REMARK',
            type : 'richText',
            editor : true,
            width : 330,
        },  {
            field : 'orgName',
            title : 'T_LIMS_DBCONN.ORGNAME',
            validators : [ 'notEmpty' ],
            type : 'choose',
            category : 'org-simple',
            editor: true,
            cleanable : false,
            onBeforeChoose : function() {
                return {
                    single : true,
                }
            },
            onAfterChoose : function (rows,index) {
                if (Gikam.isNotEmpty(rows)) {
                    this.setData({
                        index : index,
                        orgId : rows[0].id,
                        orgName : rows[0].orgName
                    },true);
                }
            },
            onClean : function (field, value, index) {
                this.setData({
                    index : index,
                    orgId : null,
                    orgName : null
                },true);
            }
        }];
    },

    getBaseInfoFormFields : function() {
        return [ {
            field : 'url',
            title : 'T_LIMS_DBCONN.URL',
            validators : [ 'strLength[0,160]' ]
        }, {
            field : 'username',
            title : 'T_LIMS_DBCONN.USERNAME',
            validators : [ 'strLength[0,80]' ]
        }, {
            field : 'password',
            title : 'T_LIMS_DBCONN.PASSWORD',
            validators : [ 'strLength[0,80]' ]
        }, {
            field : 'remark',
            title : 'T_LIMS_DBCONN.REMARK',
            validators : [ 'strLength[0,80]' ]
        }, {
            field : 'orgId',
            title : 'T_LIMS_DBCONN.ORGID',
            validators : [ 'strLength[0,40]' ]
        }, {
            field : 'orgName',
            title : 'T_LIMS_DBCONN.ORGNAME',
            validators : [ 'strLength[0,40]' ]
        }, {
            field : 'sourceName',
            title : 'T_LIMS_DBCONN.SOURCENAME',
            validators : [ 'strLength[0,40]' ]
        } ];
    },

    getSearchListColumns : function() {
        return [ {
            checkbox : true
        }, Gikam.status.getBpmnColumn(limsDbconn.workflow.dbTable), {
            field : 'url',
            title : 'T_LIMS_DBCONN.URL'
        }, {
            field : 'username',
            title : 'T_LIMS_DBCONN.USERNAME'
        }, {
            field : 'password',
            title : 'T_LIMS_DBCONN.PASSWORD'
        }, {
            field : 'remark',
            title : 'T_LIMS_DBCONN.REMARK'
        }, {
            field : 'orgId',
            title : 'T_LIMS_DBCONN.ORGID'
        }, {
            field : 'orgName',
            title : 'T_LIMS_DBCONN.ORGNAME'
        }, {
            field : 'sourceName',
            title : 'T_LIMS_DBCONN.SOURCENAME'
        } ];
    },

    getChooseListColumns : function() {
        return [ {
            field : 'url',
            title : 'T_LIMS_DBCONN.URL'
        }, {
            field : 'username',
            title : 'T_LIMS_DBCONN.USERNAME'
        }, {
            field : 'password',
            title : 'T_LIMS_DBCONN.PASSWORD'
        }, {
            field : 'remark',
            title : 'T_LIMS_DBCONN.REMARK'
        }, {
            field : 'orgId',
            title : 'T_LIMS_DBCONN.ORGID'
        }, {
            field : 'orgName',
            title : 'T_LIMS_DBCONN.ORGNAME'
        }, {
            field : 'sourceName',
            title : 'T_LIMS_DBCONN.SOURCENAME'
        } ];
    },

    baseUrl : IFM_CONTEXT + '/secure/basemodule/common/eptstorage/dbconns'
});
